Docker Command를 정리해 봤습니다
안녕하세요 클래스메소드 김재욱(Kim Jaewook) 입니다. 이번에는 Docker Command를 정리해 봤습니다.
이전에 집필한 Docker 블로그는 아래 링크를 참고해주세요.
- 「초심자용」일단 도전해 본 Docker
- EC2에 또 하나의 서버를 구축해봤다
- Docker의 Registry와 Private registry에 대해서
- Docker로 Xampp와 WordPress를 설치해서 블로그를 구축
- Dockerfile에 ubuntu-nginx-php를 만들고 RDS와 연동해 보기 – 서버 구축편
- Dockerfile에 ubuntu-nginx-php를 만들고 RDS와 연동해 보기 – RDS 연동편
docker run
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
docker run 커맨드는 다음과 같은 형식으로 사용됩니다.
명령어 |
디폴트 |
설명 |
--add-host |
사용자 지정 호스트-IP 매핑 추가(host:ip) |
|
--attach , -a |
STDIN, STDOUT 또는 STDERR에 연결 |
|
--detach , -d |
백그라운드에서 컨테이너 실행 및 컨테이너 ID 출력 |
|
--detach-keys |
컨테이너 분리를 위한 키 시퀀스 재정의 |
|
--disable-content-trust |
TRUE |
이미지 확인 건너뛰기 |
--env , -e |
환경 변수 설정 |
|
--env-file |
환경 변수 파일에서 읽기 |
|
--expose |
포트 또는 포트 범위 노출 |
|
--group-add |
가입할 그룹 추가 |
|
--hostname , -h |
컨테이너 호스트 이름 |
|
--mount |
파일 시스템 마운트를 컨테이너에 연결 |
|
--name |
컨테이너에 이름 할당 |
|
--net |
컨테이너를 네트워크에 연결 |
|
--net-alias |
컨테이너에 대한 네트워크 범위 별칭 추가 |
|
--network |
컨테이너를 네트워크에 연결 |
|
--network-alias |
컨테이너에 대한 네트워크 범위 별칭 추가 |
|
--pull |
missing |
실행하기 전에 이미지 가져오기 |
--read-only |
컨테이너의 루트 파일 시스템을 읽기 전용으로 마운트 |
|
--restart |
no |
컨테이너 종료 시 적용할 재시작 정책 |
--rm |
컨테이너가 종료되면 자동으로 제거 |
|
--volume , -v |
볼륨 마운트 바인딩 |
|
--volume-driver |
컨테이너용 옵션 볼륨 드라이버 |
|
--volumes-from |
지정된 컨테이너에서 볼륨 마운트 |
|
--workdir , -w |
컨테이너 내부의 작업 디렉토리 |
docker image
docker image COMMAND
docker image 커맨드는 다음과 같은 형식으로 사용됩니다.
명령어 |
설명 |
docker image build |
Dockerfile에서 이미지 빌드 |
docker image history |
이미지의 history 표시 |
docker image ls |
이미지 나열 |
docker image prune |
사용하지 않는 이미지 제거 |
docker image pull |
레지스트리에서 이미지 또는 저장소 가져오기 |
docker image push |
이미지 또는 저장소를 레지스트리에 푸시 |
docker image rm |
하나 이상의 이미지 제거 |
docker image tag |
SOURCE_IMAGE를 참조하는 TARGET_IMAGE 태그 생성 |
docker container
docker container COMMAND
docker container 커맨드는 다음과 같은 형식으로 사용됩니다.
명령어 |
설명 |
docker container attach |
실행 중인 컨테이너에 로컬 표준 입력, 출력 및 오류 스트림 연결 |
docker container commit |
컨테이너의 변경 사항에서 새 이미지 만들기 |
docker container cp |
컨테이너와 로컬 파일 시스템 간에 파일/폴더 복사 |
docker container create |
새 컨테이너 만들기 |
docker container exec |
실행 중인 컨테이너에서 명령 실행 |
docker container inspect |
하나 이상의 컨테이너에 대한 자세한 정보 표시 |
docker container kill |
하나 이상의 실행 중인 컨테이너 종료 |
docker container logs |
컨테이너의 로그 가져오기 |
docker container ls |
컨테이너 나열 |
docker container pause |
하나 이상의 컨테이너 내 모든 프로세스 일시 중지 |
docker container port |
컨테이너에 대한 포트 매핑 또는 특정 매핑 나열 |
docker container prune |
중지된 모든 컨테이너 제거 |
docker container rename |
컨테이너 이름 바꾸기 |
docker container restart |
하나 이상의 컨테이너 다시 시작 |
docker container rm |
하나 이상의 컨테이너 제거 |
docker container run |
새 컨테이너에서 명령 실행 |
docker container start |
하나 이상의 중지된 컨테이너 시작 |
docker container stop |
하나 이상의 실행 중인 컨테이너 중지 |
docker container top |
컨테이너의 실행 중인 프로세스 표시 |
docker container unpause |
하나 이상의 컨테이너 내의 모든 프로세스 일시 중지 해제 |
docker compose
docker compose COMMAND
docker compose 커맨드는 다음과 같은 형식으로 사용됩니다.
명령어 |
설명 |
docker-compose up -d |
컨테이너 생성 및 시작 |
docker-compose scale web=10 |
생성 컨테이너 수 |
docker-compose ps |
컨테이너 목록 |
docker-compose logs |
컨테이너 로그 |
docker-compose run web /bin/cal |
시작 + 명령 실행 |
docker-compose exec web bash |
명령 실행 |
docker-compose start |
전체 컨테이너 시작 |
docker-compose restart |
전체 컨테이너 다시 시작 |
docker-compose kill |
전체 컨테이너 강제 정지 |
docker-compose rm |
전체 컨테이너 삭제 |
docker-compose build --no-cache |
전체 컨테이너를 빌드 |